package com.jxmcloud.business.cut.service.admin.activity;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jxmcloud.business.cut.dto.admin.GmUserWatchLiveTaskDetailDto;
import com.jxmcloud.business.cut.dto.gm.AddInvitedDto;
import com.jxmcloud.business.cut.dto.gm.KickOffDto;
import com.jxmcloud.business.cut.dto.gm.ResetActivityIdDto;
import com.jxmcloud.business.cut.dto.gm.UpdateProgressDto;
import com.jxmcloud.business.cut.model.activity.Bag;
import com.jxmcloud.business.cut.vo.*;

import java.util.List;

public interface IGmService {


    /**
     * 调整当前流程
     * @param updateProgressDto
     */
    void updateProgress(UpdateProgressDto updateProgressDto);

    /**
     * 调整当前流程
     * @param updateProgressDto
     */
    void updateProgressNew(UpdateProgressDto updateProgressDto);

    void checkAddInvitedPlayer(AddInvitedDto addInvitedDto);

    void resetActivityId(ResetActivityIdDto resetActivityIdDto);

    void kickOff(KickOffDto kickOffDto);

    List<Bag> getUserConfigItem(String account);

    IPage<RefreshConfigLogVo> getRefreshConfigLog(Integer pageNum, Integer pageSize);

    IPage<GmConfigActivityStartVo> getResetActivity(Integer pageNum, Integer pageSize);

    GmUserLoginInfoVo getUserList(String account);

    GmWatchLiveConfigActivityTaskVo  getWatchLiveTaskList(String account);

    void updateWatchLiveTask(GmUserWatchLiveTaskDetailDto gmUserWatchLiveTaskDetailDto);

    void resetUserFlowInfo(Integer activityId);
}
